<div class="section"><h2><a name="liquibase:migrateSQL"></a>
liquibase:migrateSQL</h2>
<p><strong>Full name</strong>:</p>
<p>org.liquibase:liquibase-plugin:1.9.4.0-SNAPSHOT:migrateSQL</p>
<p><strong>Description</strong>:</p>
<p>Creates an SQL migration script using the provided
DatabaseChangeLog(s) comparing what already exists in the database
to what is defined in the DataBaseChangeLog(s).</p>
<p><strong>Attributes</strong>:</p>
<ul><li>This plugin goal has been deprecated: Use {@link LiquibaseUpdateSQL} or Maven goal &quot;updateSQL&quot; instead..</li>
<li>Requires a Maven 2.0 project to be executed.</li>
<li>Requires dependency resolution of artifacts in scope: <code>test</code>.</li>
</ul>
<div class="section"><h3><a name="Optional_Parameters"></a>
Optional Parameters</h3>
<table class="bodyTable"><tr class="a"><th>Name</th>
<th>Type</th>
<th>Since</th>
<th>Description</th>
</tr>
<tr class="b"><td><strong><a href="#changeLogFile">changeLogFile</a>
</strong></td>
<td><code>String</code></td>
<td><code>-</code></td>
<td>Specifies the change log file to use for Liquibase. </td>
</tr>
<tr class="a"><td><strong><a href="#changesToApply">changesToApply</a>
</strong></td>
<td><code>int</code></td>
<td><code>-</code></td>
<td>The number of changes to apply to the database. By default this
value is 0, which will result in all changes (not already applied
to the database) being applied. Default value is: <code>0</code>.</td>
</tr>
<tr class="b"><td><strong><a href="#clearCheckSums">clearCheckSums</a>
</strong></td>
<td><code>boolean</code></td>
<td><code>-</code></td>
<td>Flag for forcing the checksums to be cleared from teh
DatabaseChangeLog table. Default value is: <code>false</code>.</td>
</tr>
<tr class="a"><td><strong><a href="#contexts">contexts</a>
</strong></td>
<td><code>String</code></td>
<td><code>-</code></td>
<td>The Liquibase contexts to execute, which can be &quot;,&quot; separated if
multiple contexts are required. If no context is specified then ALL
contexts will be executed. </td>
</tr>
<tr class="b"><td><strong><a href="#defaultSchemaName">defaultSchemaName</a>
</strong></td>
<td><code>String</code></td>
<td><code>-</code></td>
<td>The default schema name to use the for database connection. </td>
</tr>
<tr class="a"><td><strong><a href="#driver">driver</a>
</strong></td>
<td><code>String</code></td>
<td><code>-</code></td>
<td>The fully qualified name of the driver class to use to connect to
the database. </td>
</tr>
<tr class="b"><td><strong><a href="#dropFirst">dropFirst</a>
</strong></td>
<td><code>boolean</code></td>
<td><code>-</code></td>
<td>Whether or not to perform a drop on the database before executing
the change. Default value is: <code>false</code>.</td>
</tr>
<tr class="a"><td><strong><a href="#emptyPassword">emptyPassword</a>
</strong></td>
<td><code>boolean</code></td>
<td><code>-</code></td>
<td><strong>Deprecated</strong>. Use an empty string as the password for the database connection.
This should not be used along side the <code>password</code>
setting. Default value is: <code>false</code>.</td>
</tr>
<tr class="b"><td><strong><a href="#expressionVars">expressionVars</a>
</strong></td>
<td><code>Properties</code></td>
<td><code>-</code></td>
<td>Array to put a expression variable to maven plugin. </td>
</tr>
<tr class="a"><td><strong><a href="#includeArtifact">includeArtifact</a>
</strong></td>
<td><code>boolean</code></td>
<td><code>-</code></td>
<td>Allows for the maven project artifact to be included in the class
loader for obtaining the Liquibase property and DatabaseChangeLog
files. Default value is: <code>true</code>.</td>
</tr>
<tr class="b"><td><strong><a href="#logging">logging</a>
</strong></td>
<td><code>String</code></td>
<td><code>-</code></td>
<td>Controls the level of logging from Liquibase when executing. The
value can be &quot;all&quot;, &quot;finest&quot;, &quot;finer&quot;, &quot;fine&quot;, &quot;info&quot;, &quot;warning&quot;,
&quot;severe&quot; or &quot;off&quot;. The value is case insensitive. Default value is: <code>INFO</code>.</td>
</tr>
<tr class="a"><td><strong><a href="#migrationSqlOutputFile">migrationSqlOutputFile</a>
</strong></td>
<td><code>File</code></td>
<td><code>-</code></td>
<td>The file to output the Migration SQL script to, if it exists it
will be overwritten. Default value is: <code>${project.build.directory}/liquibase/migrate.sql</code>.</td>
</tr>
<tr class="b"><td><strong><a href="#password">password</a>
</strong></td>
<td><code>String</code></td>
<td><code>-</code></td>
<td>The database password to use to connect to the specified database. </td>
</tr>
<tr class="a"><td><strong><a href="#promptOnNonLocalDatabase">promptOnNonLocalDatabase</a>
</strong></td>
<td><code>boolean</code></td>
<td><code>-</code></td>
<td>Controls the prompting of users as to whether or not they really
want to run the changes on a database that is not local to the
machine that the user is current executing the plugin on. Default value is: <code>true</code>.</td>
</tr>
<tr class="b"><td><strong><a href="#propertyFile">propertyFile</a>
</strong></td>
<td><code>String</code></td>
<td><code>-</code></td>
<td>The Liquibase properties file used to configure the Liquibase
<code>Liquibase</code>. </td>
</tr>
<tr class="a"><td><strong><a href="#propertyFileWillOverride">propertyFileWillOverride</a>
</strong></td>
<td><code>boolean</code></td>
<td><code>-</code></td>
<td>Flag allowing for the Liquibase properties file to override any
settings provided in the Maven plugin configuration. By default if
a property is explicity specified it is not overridden if it also
appears in the properties file. Default value is: <code>false</code>.</td>
</tr>
<tr class="b"><td><strong><a href="#url">url</a>
</strong></td>
<td><code>String</code></td>
<td><code>-</code></td>
<td>The Database URL to connect to for executing Liquibase. </td>
</tr>
<tr class="a"><td><strong><a href="#username">username</a>
</strong></td>
<td><code>String</code></td>
<td><code>-</code></td>
<td>The database username to use to connect to the specified database. </td>
</tr>
<tr class="b"><td><strong><a href="#verbose">verbose</a>
</strong></td>
<td><code>boolean</code></td>
<td><code>-</code></td>
<td>Controls the verbosity of the output from invoking the plugin. Default value is: <code>false</code>.</td>
</tr>
</table>
</div>
<div class="section"><h3><a name="Parameter_Details"></a>
Parameter Details</h3>
<p><strong><a name="changeLogFile">changeLogFile</a>
:</strong></p>
<p>Specifies the change log file to use for Liquibase.</p>
<ul><li><strong>Type</strong>: <code>java.lang.String</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.changeLogFile}</code></li>
</ul>
<hr />
<p><strong><a name="changesToApply">changesToApply</a>
:</strong></p>
<p>The number of changes to apply to the database. By default this
value is 0, which will result in all changes (not already applied
to the database) being applied.</p>
<ul><li><strong>Type</strong>: <code>int</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.changesToApply}</code></li>
<li><strong>Default</strong>: <code>0</code></li>
</ul>
<hr />
<p><strong><a name="clearCheckSums">clearCheckSums</a>
:</strong></p>
<p>Flag for forcing the checksums to be cleared from teh
DatabaseChangeLog table.</p>
<ul><li><strong>Type</strong>: <code>boolean</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.clearCheckSums}</code></li>
<li><strong>Default</strong>: <code>false</code></li>
</ul>
<hr />
<p><strong><a name="contexts">contexts</a>
:</strong></p>
<p>The Liquibase contexts to execute, which can be &quot;,&quot; separated if
multiple contexts are required. If no context is specified then ALL
contexts will be executed.</p>
<ul><li><strong>Type</strong>: <code>java.lang.String</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.contexts}</code></li>
</ul>
<hr />
<p><strong><a name="defaultSchemaName">defaultSchemaName</a>
:</strong></p>
<p>The default schema name to use the for database connection.</p>
<ul><li><strong>Type</strong>: <code>java.lang.String</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.defaultSchemaName}</code></li>
</ul>
<hr />
<p><strong><a name="driver">driver</a>
:</strong></p>
<p>The fully qualified name of the driver class to use to connect to
the database.</p>
<ul><li><strong>Type</strong>: <code>java.lang.String</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.driver}</code></li>
</ul>
<hr />
<p><strong><a name="dropFirst">dropFirst</a>
:</strong></p>
<p>Whether or not to perform a drop on the database before executing
the change.</p>
<ul><li><strong>Type</strong>: <code>boolean</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.dropFirst}</code></li>
<li><strong>Default</strong>: <code>false</code></li>
</ul>
<hr />
<p><strong><a name="emptyPassword">emptyPassword</a>
:</strong></p>
<p>Use an empty string as the password for the database connection.
This should not be used along side the <code>password</code>
setting.</p>
<ul><li><strong>Deprecated</strong>: <code>Use an empty or null value for the password instead.</code></li>
<li><strong>Type</strong>: <code>boolean</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.emptyPassword}</code></li>
<li><strong>Default</strong>: <code>false</code></li>
</ul>
<hr />
<p><strong><a name="expressionVars">expressionVars</a>
:</strong></p>
<p>Array to put a expression variable to maven plugin.</p>
<ul><li><strong>Type</strong>: <code>java.util.Properties</code></li>
<li><strong>Required</strong>: <code>No</code></li>
</ul>
<hr />
<p><strong><a name="includeArtifact">includeArtifact</a>
:</strong></p>
<p>Allows for the maven project artifact to be included in the class
loader for obtaining the Liquibase property and DatabaseChangeLog
files.</p>
<ul><li><strong>Type</strong>: <code>boolean</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.includeArtifact}</code></li>
<li><strong>Default</strong>: <code>true</code></li>
</ul>
<hr />
<p><strong><a name="logging">logging</a>
:</strong></p>
<p>Controls the level of logging from Liquibase when executing. The
value can be &quot;all&quot;, &quot;finest&quot;, &quot;finer&quot;, &quot;fine&quot;, &quot;info&quot;, &quot;warning&quot;,
&quot;severe&quot; or &quot;off&quot;. The value is case insensitive.</p>
<ul><li><strong>Type</strong>: <code>java.lang.String</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.logging}</code></li>
<li><strong>Default</strong>: <code>INFO</code></li>
</ul>
<hr />
<p><strong><a name="migrationSqlOutputFile">migrationSqlOutputFile</a>
:</strong></p>
<p>The file to output the Migration SQL script to, if it exists it
will be overwritten.</p>
<ul><li><strong>Type</strong>: <code>java.io.File</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.migrationSqlOutputFile}</code></li>
<li><strong>Default</strong>: <code>${project.build.directory}/liquibase/migrate.sql</code></li>
</ul>
<hr />
<p><strong><a name="password">password</a>
:</strong></p>
<p>The database password to use to connect to the specified database.</p>
<ul><li><strong>Type</strong>: <code>java.lang.String</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.password}</code></li>
</ul>
<hr />
<p><strong><a name="promptOnNonLocalDatabase">promptOnNonLocalDatabase</a>
:</strong></p>
<p>Controls the prompting of users as to whether or not they really
want to run the changes on a database that is not local to the
machine that the user is current executing the plugin on.</p>
<ul><li><strong>Type</strong>: <code>boolean</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.promptOnNonLocalDatabase}</code></li>
<li><strong>Default</strong>: <code>true</code></li>
</ul>
<hr />
<p><strong><a name="propertyFile">propertyFile</a>
:</strong></p>
<p>The Liquibase properties file used to configure the Liquibase
<code>Liquibase</code>.</p>
<ul><li><strong>Type</strong>: <code>java.lang.String</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.propertyFile}</code></li>
</ul>
<hr />
<p><strong><a name="propertyFileWillOverride">propertyFileWillOverride</a>
:</strong></p>
<p>Flag allowing for the Liquibase properties file to override any
settings provided in the Maven plugin configuration. By default if
a property is explicity specified it is not overridden if it also
appears in the properties file.</p>
<ul><li><strong>Type</strong>: <code>boolean</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.propertyFileWillOverride}</code></li>
<li><strong>Default</strong>: <code>false</code></li>
</ul>
<hr />
<p><strong><a name="url">url</a>
:</strong></p>
<p>The Database URL to connect to for executing Liquibase.</p>
<ul><li><strong>Type</strong>: <code>java.lang.String</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.url}</code></li>
</ul>
<hr />
<p><strong><a name="username">username</a>
:</strong></p>
<p>The database username to use to connect to the specified database.</p>
<ul><li><strong>Type</strong>: <code>java.lang.String</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.username}</code></li>
</ul>
<hr />
<p><strong><a name="verbose">verbose</a>
:</strong></p>
<p>Controls the verbosity of the output from invoking the plugin.</p>
<ul><li><strong>Type</strong>: <code>boolean</code></li>
<li><strong>Required</strong>: <code>No</code></li>
<li><strong>Expression</strong>: <code>${liquibase.verbose}</code></li>
<li><strong>Default</strong>: <code>false</code></li>
</ul>
</div>
</div>
